Next | Prev | Up | Top | Contents | Index
Kinds of Kernel-Level Drivers
There are three distinct kinds of kernel-level drivers:
- A character device driver transfers data as a stream of bytes of arbitrary length. A character device driver is called as a direct result of a user process issuing a system function call such as read() or ioctl().
- A block device driver transfers data in blocks of fixed size, and is called from the kernel to support filesystem or paging operations.
- A STREAMS driver is not a device driver, but rather can be dynamically installed to operate on the flow of data to and from any character device driver.
Overviews of the operation of STREAMS drivers are found in Chapter 19, "STREAMS Drivers." The rest of this discussion is on character and block device drivers.
Next | Prev | Up | Top | Contents | Index